package fiuba.algo3;

import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class ManejadorXML {

	public NodeList obtenerElementosDeXML(String archivoXML, String tag) {
		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

		try{
			DocumentBuilder db = dbf.newDocumentBuilder();
			Document documento = db.parse(archivoXML);
			Element rootElement = documento.getDocumentElement();
			NodeList listaElementos = rootElement.getElementsByTagName(tag);
			if (listaElementos.item(0) == null) { return null; }
			return listaElementos;
		}
		catch (ParserConfigurationException e) {
			throw new RuntimeException("No se pudo analizar el archivo XML");
		}
		catch (SAXException e) {
			throw new RuntimeException("No se pudo analizar XML" + e.getMessage(), e);
		}
		catch (IOException e) {
			throw new RuntimeException("No se encontro el archivo XML" + e.getMessage(), e);
		}
	}

}
